package com.ruoyi.system.domain;

import com.ruoyi.system.entity.AbdulBaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.ruoyi.common.annotation.Excel;

/**
 * 会员短信通知配置，定义短信类型、推送开关及用途描述对象 member_sms_notification
 *
 * @author ruoyi
 * @date 2025-05-13
 */
@Data
@ApiModel("会员短信通知配置，定义短信类型、推送开关及用途描述")
public class MemberSmsNotification extends AbdulBaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 会员短信通知配置表唯一标识ID，主键自增
     */
    @ApiModelProperty("会员短信通知配置表唯一标识ID，主键自增")
    private Long id;

    /**
     * 短信类型（order_status=订单状态通知，promotion=营销活动，verification=验证码，reminder=提醒通知，custom=自定义）
     */
    @Excel(name = "短信类型", readConverterExp = "o=rder_status=订单状态通知，promotion=营销活动，verification=验证码，reminder=提醒通知，custom=自定义")
    @ApiModelProperty("短信类型（order_status=订单状态通知，promotion=营销活动，verification=验证码，reminder=提醒通知，custom=自定义）")
    private String smsType;

    /**
     * 短信模板ID（如"SMS_123456789"），关联短信服务商模板
     */
    @Excel(name = "短信模板ID")
    @ApiModelProperty("短信模板ID，关联短信服务商模板")
    private String smsTemplateId;

    /**
     * 短信用途描述（如"订单状态变更通知"）
     */
    @Excel(name = "短信用途描述")
    @ApiModelProperty("短信用途描述")
    private String smsDescription;

    /**
     * 是否启用推送消息（0=禁用，1=启用，默认为启用）
     */
    @Excel(name = "是否启用推送消息", readConverterExp = "0==禁用，1=启用，默认为启用")
    @ApiModelProperty("是否启用推送消息（0=禁用，1=启用，默认为启用）")
    private Integer isPushEnabled;

    /**
     * 禁用推送原因（如"系统维护中"）
     */
    @Excel(name = "禁用推送原因")
    @ApiModelProperty("禁用推送原因")
    private String disableReason;

    /**
     * 配置管理员（如"张三"）
     */
    @Excel(name = "配置管理员")
    @ApiModelProperty("配置管理员")
    private String configOwner;

    /**
     * 管理员联系电话（如"13800138000"）
     */
    @Excel(name = "管理员联系电话")
    @ApiModelProperty("管理员联系电话")
    private String configPhone;

    /**
     * 手机号
     */
    @Excel(name = "手机号")
    @ApiModelProperty("手机号")
    private String phone;
}